#ifndef TRAYICON_H
#define TRAYICON_H
#pragma once
#include <QSystemTrayIcon>
#include <QMenu>
#include <QAction>
#include <QIcon>
#include <QMenu>
#include <QDebug>
#include <QApplication>
#include <QShortcut>
#include <QGSettings>
#include <user_manual.hpp>
#include "kaboutdialog.h"

class TrayIcon : public QSystemTrayIcon
{
    Q_OBJECT

public:
    TrayIcon(QObject *parent = nullptr);

signals:
    void sigOpenSettingWid();
    void sigTrayCloseRec();

public slots:
    void slotOpenSettingWid();
    void slotOpenAboutWid();
    void slotOpenHelpWid();
    void slotQuitApp();
    void slotOpenAdviceWid();
    void changeStyle();

private:
    QString getScreencastVersion();

    QAction *settingAction;
    QAction *aboutAction;
    QAction *helpAction;
    QAction *quitAction;

    kdk::KAboutDialog *m_aboutDialog;
    QGSettings *m_styleSettings = nullptr;
};

#endif // TRAYICON_H
